import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.Scanner;

/**
 * @Author wonghiu
 * @Date 2021/8/31 19:23
 * @Version 1.0.1
 * 1
 * 5
 * 1 2 1 3 2
 */
public class pddd {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for (int i = 0; i < n; i++) {
            int k = sc.nextInt();
            int m = (int) ((k-2)/2.5);
            while (m%2!=0){
                m--;
            }
            int newk = (int) (k-(m*2.5+2));
            System.out.println((int)(newk/3)+m);
        }


//        Scanner sc = new Scanner(System.in);
//        int n = sc.nextInt();
//        for (int ii = 0; ii < n; ii++) {
//            int m =sc.nextInt();
//            int[] nums = new int[m];
//            for (int i = 0; i < m; i++) {
//                nums[i] = sc.nextInt();
//            }
//            int cc = 0;
//            while (true) {
//                cc++;
//                int maxCount_w = 0;
//                int maxCount_h = 0;
//                int start = 0;
//                int end = 0;
//                int finalStart = 0;
//                int finalEnd = 0;
//                int indexH = 0;
//
//                for (int i = 0; i < nums.length; i++) {
//                    if (nums[i] != 0) {
//                        start = i;
//                        while (i < nums.length && nums[i] != 0) {
//                            if (maxCount_h < nums[i]) {
//                                indexH = i;
//                                maxCount_h = nums[i];
//                            }
//                            i++;
//                        }
//                        end = i - 1;
//                        if (end - start + 1 > maxCount_w) {
//                            maxCount_w = end - start + 1;
//                            finalEnd = end;
//                            finalStart = start;
//                        }
//                    }
//
//                }
//                if (finalEnd == finalStart && finalEnd == 0) {
//                    break;
//                }
//                if (maxCount_w > maxCount_h) {
//                    for (int i = finalStart; i < finalEnd; i++) {
//                        nums[i]--;
//                    }
//                } else {
//                    nums[indexH] = 0;
//                }
//            }
//            System.out.println(cc-1);
//        }
    }
}
